Tutorial: Designing Distributed Software in mCRL2

نویسندگان

چکیده

Distributed software is very tricky to implement correctly as some errors only occur in peculiar situations. For such testing not effective. Mathematically proving correctness hard and time consuming, therefore, it rarely done. Fortunately, there a technique between, namely model checking, that, if applied with skill, both efficient able find rare errors. In this tutorial we show how create behavioural models of parallel software, specify requirements using modal formulas, verify these. that use the mCRL2 language toolset (www.mcrl2.org/). We discuss design an evolution well-known mutual exclusion protocols, checking provides insight their behaviour correctness, but also guides design.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Analysis of Distributed Systems with mCRL2

ion An important notion in process algebra is that of abstraction. Usually the requirements of a system are defined in terms of external behaviour (i.e. the interactions of the system with its environment), while one wishes to check these requirements on an implementation of the system which also contains internal behaviour (i.e. the interactions between the components of the system). So it is ...

متن کامل

Designing Distributed Learning Environments with Intelligent Software

I believe that education is an investment for the future of society. To develop our society we need to achieve the best education for every individual through providing every appropriate means for the particular individual. To provide the best education for each individual, we must perforce adapt our education to the individual. One adaption is to free the individual constraints of place and ti...

متن کامل

Designing a Distributed Software Transactional Memory System

Distributed systems are widely used in high performance computing for performing computationally extensive calculations. In programming terms, distributed systems have usually been exploited through the use of dedicated APIs such as OpenMP and MPI. With these programming models, synchronization is achieved using locks and barriers, and is complex to implement correctly. Transactional memory is ...

متن کامل

Designing Software Cockpits for Coordinating Distributed Software Development

Coordination of global software development is particularly difficult as it involves teams that are distributed across different locations and time zones. One of the key issues is a lack of understanding of how activities of different teams (and team members) relate to one another. To provide situational awareness for distributed teams, software cockpits, at-a-glance computer-controlled display...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Lecture Notes in Computer Science

سال: 2021

ISSN: ['1611-3349', '0302-9743']

DOI: https://doi.org/10.1007/978-3-030-78089-0_15